Conversation
| return this._idHex; | ||
| } | ||
| public toText(): string { | ||
| return 'ic:' + this.toHex() + '00'; |
There was a problem hiding this comment.
Don’t forget a // TODO here :-)
| if (hex.length % 2 === 0 && /^[0-9A-F]+$/.test(hex)) { | ||
| // Remove the checksum from the hexadecimal. | ||
| // TODO: validate the checksum. | ||
| return this.fromHex(hex.slice(0, -2)); |
There was a problem hiding this comment.
shouldn't fromHex fail here actually? (I thought it was failing.)
There was a problem hiding this comment.
fromHex just stores the string. It doesn't do any checks.
There was a problem hiding this comment.
I see. I can swear I had added checks in encode decode functions somewhere...
carry on 😉
| .toString('hex') | ||
| .toUpperCase(); | ||
| // TODO implement checksum | ||
| return CanisterId.fromText('ic:' + hex + '00'); |
There was a problem hiding this comment.
sounds good, but perhaps we need to centralize all this in a IC identifier library?? I am going to add senders for instance which is more of the same logic. And this is canister id specific. (No change asked for this PR, just asking, as I want to do something similar.)
There was a problem hiding this comment.
Sure. Same applies to Rust. canisterId is defined inside the ic_http_agent crate. Probably separate that out as well.
There was a problem hiding this comment.
Yes. I have been pondering that. Not sure which option is the best.
hansl
left a comment
There was a problem hiding this comment.
Blocking this for now while I investigate a problem with master.
|
@hansl Any pointers as to what you are investigating? |
hansl
left a comment
There was a problem hiding this comment.
Approving and merging this as it seems master is green (and so is this PR). I don't know why a bug with reply happened to some people (including the Node E2E PR).
## Changelog for advisory-db: Branch: master Commits: [rustsec/advisory-db@6e48979d...0ad26bc7](rustsec/advisory-db@6e48979...0ad26bc) * [`5751a5f4`](rustsec/advisory-db@5751a5f) CI: bump rustsec-admin to v0.3.0-pre2 ([RustSec/advisory-db#438](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/438)) * [`65441901`](rustsec/advisory-db@6544190) Add unmaintained crate advisory for stdweb ([RustSec/advisory-db#439](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/439)) * [`acc73d95`](rustsec/advisory-db@acc73d9) CI: bump rustsec-admin to v0.3.0-pre3 ([RustSec/advisory-db#440](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/440)) * [`691a7504`](rustsec/advisory-db@691a750) Assigned RUSTSEC-2020-0056 to stdweb ([RustSec/advisory-db#441](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/441)) * [`8505c957`](rustsec/advisory-db@8505c95) Add unmaintained crate advisory for `block-cipher` ([RustSec/advisory-db#442](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/442)) * [`fa616899`](rustsec/advisory-db@fa61689) Assigned RUSTSEC-2020-0057 to block-cipher ([RustSec/advisory-db#443](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/443)) * [`5c9ebbfa`](rustsec/advisory-db@5c9ebbf) Add unmaintained crate advisory for `stream-cipher` ([RustSec/advisory-db#444](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/444)) * [`218de91a`](rustsec/advisory-db@218de91) Assigned RUSTSEC-2020-0058 to stream-cipher ([RustSec/advisory-db#445](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/445)) * [`681a2040`](rustsec/advisory-db@681a204) Add advisory for notable UB fix in libpulse-binding v2.6.0 ([RustSec/advisory-db#435](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/435)) * [`1e48ac39`](rustsec/advisory-db@1e48ac3) Assigned RUSTSEC-2019-0038 to libpulse-binding ([RustSec/advisory-db#446](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/446)) * [`59bee556`](rustsec/advisory-db@59bee55) Add advisory for use-after-frees fixed in libpulse-binding v1.2.1 ([RustSec/advisory-db#433](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/433)) * [`146de2d8`](rustsec/advisory-db@146de2d) Assigned RUSTSEC-2018-0021 to libpulse-binding ([RustSec/advisory-db#447](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/447)) * [`3b1f08f2`](rustsec/advisory-db@3b1f08f) Unyank RUSTSEC-2020-0011 ([RustSec/advisory-db#448](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/448)) * [`3796cc00`](rustsec/advisory-db@3796cc0) README.md: point chat badge to Zulip ([RustSec/advisory-db#449](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/449)) * [`1bf68e0d`](rustsec/advisory-db@1bf68e0) RUSTSEC-2020-0015: use wildcards in version req ([RustSec/advisory-db#450](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/450)) * [`67a2144b`](rustsec/advisory-db@67a2144) RUSTSEC-2020-0015: remove wildcards ([RustSec/advisory-db#451](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/451)) * [`0ad26bc7`](rustsec/advisory-db@0ad26bc) Bump `rustsec-admin` to v0.3.0 ([RustSec/advisory-db#452](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/452))
## Changelog for advisory-db: Branch: master Commits: [rustsec/advisory-db@6e48979d...0ad26bc7](rustsec/advisory-db@6e48979...0ad26bc) * [`5751a5f4`](rustsec/advisory-db@5751a5f) CI: bump rustsec-admin to v0.3.0-pre2 ([RustSec/advisory-db#438](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/438)) * [`65441901`](rustsec/advisory-db@6544190) Add unmaintained crate advisory for stdweb ([RustSec/advisory-db#439](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/439)) * [`acc73d95`](rustsec/advisory-db@acc73d9) CI: bump rustsec-admin to v0.3.0-pre3 ([RustSec/advisory-db#440](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/440)) * [`691a7504`](rustsec/advisory-db@691a750) Assigned RUSTSEC-2020-0056 to stdweb ([RustSec/advisory-db#441](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/441)) * [`8505c957`](rustsec/advisory-db@8505c95) Add unmaintained crate advisory for `block-cipher` ([RustSec/advisory-db#442](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/442)) * [`fa616899`](rustsec/advisory-db@fa61689) Assigned RUSTSEC-2020-0057 to block-cipher ([RustSec/advisory-db#443](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/443)) * [`5c9ebbfa`](rustsec/advisory-db@5c9ebbf) Add unmaintained crate advisory for `stream-cipher` ([RustSec/advisory-db#444](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/444)) * [`218de91a`](rustsec/advisory-db@218de91) Assigned RUSTSEC-2020-0058 to stream-cipher ([RustSec/advisory-db#445](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/445)) * [`681a2040`](rustsec/advisory-db@681a204) Add advisory for notable UB fix in libpulse-binding v2.6.0 ([RustSec/advisory-db#435](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/435)) * [`1e48ac39`](rustsec/advisory-db@1e48ac3) Assigned RUSTSEC-2019-0038 to libpulse-binding ([RustSec/advisory-db#446](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/446)) * [`59bee556`](rustsec/advisory-db@59bee55) Add advisory for use-after-frees fixed in libpulse-binding v1.2.1 ([RustSec/advisory-db#433](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/433)) * [`146de2d8`](rustsec/advisory-db@146de2d) Assigned RUSTSEC-2018-0021 to libpulse-binding ([RustSec/advisory-db#447](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/447)) * [`3b1f08f2`](rustsec/advisory-db@3b1f08f) Unyank RUSTSEC-2020-0011 ([RustSec/advisory-db#448](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/448)) * [`3796cc00`](rustsec/advisory-db@3796cc0) README.md: point chat badge to Zulip ([RustSec/advisory-db#449](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/449)) * [`1bf68e0d`](rustsec/advisory-db@1bf68e0) RUSTSEC-2020-0015: use wildcards in version req ([RustSec/advisory-db#450](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/450)) * [`67a2144b`](rustsec/advisory-db@67a2144) RUSTSEC-2020-0015: remove wildcards ([RustSec/advisory-db#451](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/451)) * [`0ad26bc7`](rustsec/advisory-db@0ad26bc) Bump `rustsec-admin` to v0.3.0 ([RustSec/advisory-db#452](http://r.duckduckgo.com/l/?uddg=https://github.com/RustSec/advisory-db/issues/452))
## Changelog for common: Branch: master Commits: [dfinity-lab/common@02d06647...28d0cdbc](https://github.com/dfinity-lab/common/compare/02d0664796f51c9a0baff08c923217b4d50cad6a...28d0cdbc0eeb4f35e845bbec1d0a9f086b707493) * [`32ab28ce`](https://github.com/dfinity-lab/common/commit/32ab28cecb8c979b8198aeab18ba0a1363651742) Add an SSH key for Ulan ([dfinity-lab/common#430](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/common/issues/430)) * [`0852e9f8`](https://github.com/dfinity-lab/common/commit/0852e9f82fbce60fe9bc50be6fbe1f65043750a9) Fix rust-src path ([dfinity-lab/common#431](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/common/issues/431)) * [`2bba7c6b`](https://github.com/dfinity-lab/common/commit/2bba7c6b6ddbba0069ced1527d0ee6478d484e79) Fix niv-updater-action ([dfinity-lab/common#433](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/common/issues/433)) * [`28d0cdbc`](https://github.com/dfinity-lab/common/commit/28d0cdbc0eeb4f35e845bbec1d0a9f086b707493) niv naersk: update e8061169 -> 4f7426c3 ([dfinity-lab/common#435](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/common/issues/435))
## Changelog for common: Branch: master Commits: [dfinity-lab/common@02d06647...28d0cdbc](https://github.com/dfinity-lab/common/compare/02d0664796f51c9a0baff08c923217b4d50cad6a...28d0cdbc0eeb4f35e845bbec1d0a9f086b707493) * [`32ab28ce`](https://github.com/dfinity-lab/common/commit/32ab28cecb8c979b8198aeab18ba0a1363651742) Add an SSH key for Ulan ([dfinity-lab/common#430](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/common/issues/430)) * [`0852e9f8`](https://github.com/dfinity-lab/common/commit/0852e9f82fbce60fe9bc50be6fbe1f65043750a9) Fix rust-src path ([dfinity-lab/common#431](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/common/issues/431)) * [`2bba7c6b`](https://github.com/dfinity-lab/common/commit/2bba7c6b6ddbba0069ced1527d0ee6478d484e79) Fix niv-updater-action ([dfinity-lab/common#433](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/common/issues/433)) * [`28d0cdbc`](https://github.com/dfinity-lab/common/commit/28d0cdbc0eeb4f35e845bbec1d0a9f086b707493) niv naersk: update e8061169 -> 4f7426c3 ([dfinity-lab/common#435](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/common/issues/435))
Unit-->Null